使用PHP将Word文档转化为pdf文件(用户提交数据到Word模板并修改部分内容,再将Word转为PDF) 您所在的位置:网站首页 php操作word 文档 使用PHP将Word文档转化为pdf文件(用户提交数据到Word模板并修改部分内容,再将Word转为PDF)

使用PHP将Word文档转化为pdf文件(用户提交数据到Word模板并修改部分内容,再将Word转为PDF)

2023-11-12 12:16| 来源: 网络整理| 查看: 265

需要实现的功能: 1.用户提交信息,例如:名称,年龄,电话等等 2.将这些信息填充到固定好的word模板中。 3.将生成的word转化为PDF。 4.使用的语言PHP

开始demo.docx文件中的内容 在这里插入图片描述

步骤: 1.composer 安装PHPword

composer require phpoffice/phpword

2.composer 安装dompdf

composer require dompdf/dompdf

3.正文代码

require_once 'vendor/autoload.php';//引入 $demoDoc = 'demo.docx';//模板docx文件 $doc = new \PhpOffice\PhpWord\TemplateProcessor($demoDoc); $username = '名字'; $phone = '130123456789'; $age = '32岁'; $doc->setValue('username',$username); $doc->setValue('phone',$phone); $doc->setValue('age',$age); $newDoc = $phone.'.docx';//生成的word文件 $doc->saveAs($newDoc);//保存 $newPdf = $phone.'.pdf';//生成pdf文件 \PhpOffice\PhpWord\Settings::setPdfRendererName(\PhpOffice\PhpWord\Settings::PDF_RENDERER_DOMPDF); \PhpOffice\PhpWord\Settings::setPdfRendererPath('.'); $pdf = \PhpOffice\PhpWord\IOFactory::load($newDoc); $xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($pdf, 'PDF'); $html = $xmlWriter->getContent();//获取word内容到HTML //echo $html; $xmlWriter->save($newPdf, 'PDF');//保存PDF文件 header('location:'.$newPdf);//网页显示PDF //到这个时候可以生成PDF了,但是中文的会乱码

执行以后生成的文件是这个样子的 在这里插入图片描述

4.因为没有引入中文字体所以出现乱码 5.下载字体直接放到D盘,我下载的是微软雅黑,直接从网上搜索下载就可以 在这里插入图片描述

6.安装字体 下载Dompdf的工具包 该工具包的Git地址为:https://github.com/dompdf/utils。 下载完成后,解压,复制其中的load_font.php文件到项目下的verdor/dompdf/dompdf目录下,与lib和src目录同级。 在这里插入图片描述 修改load_font.php文件 因为之前把该文件直接放在了dompdf目录下,因此需要其默认的加载autoloader的路径如下:



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有